Socket
Socket
Sign inDemoInstall

@che-ins-ui/theme

Package Overview
Dependencies
40
Maintainers
1
Versions
115
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @che-ins-ui/theme

<>


Version published
Weekly downloads
94
decreased by-72.19%
Maintainers
1
Created
Weekly downloads
Β 

Readme

Source

Theme

Бтилизация Ρ‡Π΅Ρ€Π΅Π· ThemeProvider ΠΎΡ‚ "react-jss"

для стилизации ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Ρ‚Π΅ΠΌΡƒ Π² ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€ Π²ΠΈΠ΄Π°

const theme = {
  components: {
    [INPUT_COMPONENT_NAMESPACE]: {
      // component theme
    },
    [BUTTON_COMPONENT_NAMESPACE]: {
      // component theme
    },
  },
};

Π’Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ нСсколько Π²ΠΈΠ΄ΠΎΠ² стилСй (Π΄Π°Π»Π΅Π΅ - appearance) для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€.

const theme = {
  components: {
    [INPUT_COMPONENT_NAMESPACE]: {
      // base - стили Π½Π° всё ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ для всСх ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² этого Ρ‚ΠΈΠΏΠ°
      base: {
        [INPUT_COMPONENTS_NAMES.wrapper]: {
          fontSize: "12px",
          // Π²ΠΎ всСх аппирансах Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ мСдиазапросов
          [theme.breakpoints.up("md")]: {
            fontSize: "14px",
          },
        },
      },
      big: {
        [INPUT_COMPONENTS_NAMES.wrapper]: {
          padding: "20px",
          [theme.breakpoints.up("md")]: {
            fontSize: "25px",
          },
          }
      },
      red: {
        [INPUT_COMPONENTS_NAMES.wrapper]: {
          background: 'red'
        }
        [INPUT_COMPONENTS_NAMES.input]: {
          color: "red",
        }
      },

      // ΠΏΡ€ΠΈΠΌΠ΅Ρ€ стилизации кастомного аппиранса ΠΈ состояний ΠΈΠ½ΠΏΡƒΡ‚Π° ΠΏΠΎ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°ΠΌ
      appearanceName: {
        [INPUT_COMPONENTS_NAMES.wrapper]: {
          '&[data-focused="true"]': {
            alignItems: "center",
          },
          '&[data-hasvalue="true"]': {
            alignItems: "center",
          },
        },
        [INPUT_COMPONENTS_NAMES.input]: {
          padding: "12px",
          '&[data-focused="true"]': {
            padding: "12px",
          },
          '&[data-hasvalue="true"]': {
            padding: "12px",
          },
          "&:not(:focus)::placeholder": {
            opacity: 1,
          },
        },
      },
    },
  },
};

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ аппиранс стоит Π²ΠΎΡΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ класс, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ примСнится ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°:

ΠžΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ ΠΈΠ½ΠΏΡƒΡ‚ (ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ стили Ρ‚ΠΎΠ»ΡŒΠΊΠΎ base):

<Input value={value} onChange={onChange} />

Big ΠΈΠ½ΠΏΡƒΡ‚ (ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ стили base + big):

<Input value={value} onChange={onChange} appearance="big" />

Red ΠΈΠ½ΠΏΡƒΡ‚ (ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ стили base + red):

<Input value={value} onChange={onChange} appearance="red" />

Big Red ΠΈΠ½ΠΏΡƒΡ‚ (ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ стили base + big + red):

<Input
  value={value}
  onChange={onChange}
  baseAppearance="big"
  appearance="red"
/>

Как ΠΈ Π² ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΌ css, ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ отдаётся свойствам описанным Π² css Π½ΠΈΠΆΠ΅, Π° Π½Π΅ Π² порядкС добавлСния классов. По этому Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° base / appearance Π½Π΅ всСгда ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌ. Если свойства ΠΏΠ΅Ρ€Π΅ΡΠ΅ΠΊΠ°ΡŽΡ‚ΡΡ, Ρ‚ΠΎ слСдуСт ΠΏΠ΅Ρ€Π΅Π΄Π²ΠΈΠ½ΡƒΡ‚ΡŒ baseAppearance Π² описании Π²Ρ‹ΡˆΠ΅ Ρ‡Π΅ΠΌ appearance, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠ² Π½ΠΈΠ³Π΄Π΅ Π»ΠΈ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚Π°ΠΊΠΎΠ΅ ΠΆΠ΅ сочСтаниС baseAppearance + appearance Π² этом Ρ‚ΠΈΠΏΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ². КСйс ΠΎΡ‡Π΅Π½ΡŒ Ρ€Π΅Π΄ΠΊΠΈΠΉ.

Π’Π°ΠΊ ΠΆΠ΅ Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Π΅ΡΡ‚ΡŒ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ Π½Π° data-. ΠŸΠΎΠ»Π½Ρ‹ΠΉ список ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° ΠΈ ΠΈΡ… Π±Π»ΠΎΠΊΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π² исходниках ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°.

По ΠΈΡ‚ΠΎΠ³Ρƒ Ρ‚Π΅ΠΌΠ° Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ максимум 4 класса, это ΡΠΎΠ·Π½Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎ Π±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΈΡ… большого количСства. ΠšΠ»Π°ΡΡΡ‹ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΏΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡƒ:

classNamePrefix - сам ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ blockName - описаны Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°Ρ… с константами Π²ΠΈΠ΄Π° INPUT_COMPONENTS_NAMES.wrapper. ВсС измСнСния Π² Ρ‚Π΅ΠΌΠ΅ Π΄Π΅Π»Π°Π΅ΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с использованиСм констант. appearance - Ρ‚ΠΎ Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‘ΠΌ ΠΊΠ°ΠΊ appearance / baseAppearance

{classNamePrefix}-{blockName}
{classNamePrefix}-{blockName}-base
{classNamePrefix}-{blockName}-{baseAppearance}
{classNamePrefix}-{blockName}-{appearance}

ΠŸΡ€ΠΈ отсутствии Ρ‡Π΅Π³ΠΎ Π»ΠΈΠ±ΠΎ описанного Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ класс с ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ класс Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ· Π·Π° нСнадобности.

FAQs

Last updated on 30 Nov 2022

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚑️ by Socket Inc